#ifndef _LIBRTSPSERVER_H
#define _LIBRTSPSERVER_H

typedef int(*RtspServerVerifyUserCallback) (const char *_pcUserName, const char *_pcPassWord);

/*******************************************************
功能：启动rtspserver
参数说明：
_iRtspServerPort：监听端口号
_iChnCnt：通道个数，最大32
VerifyUserCallback：用户名密码校验回调函数，参数为解码后的明文，返回0表示检验通过，-1表示失败
返回值：
	-1：失败
	0：成功
********************************************************/

int StartRTSPServer(int _iRtspServerPort, int _iChnCnt, RtspServerVerifyUserCallback VerifyUserCallback);

/*******************************************************
功能：发送视频流给rtspserver，由rtspserver封包并发给客户端
参数说明：
_iChn：通道，从零开始
_iVencType：编码类型，0：H264，1：H265，2：MJPEG
_iFrameType:帧类型，0：I帧，1：P帧
_ullTimeStamp：时间戳，单位ms
_iFrameSize：帧大小
_pucFrameBuf：帧数据
返回值：
	-1：失败
	0：成功
********************************************************/

int SendVideoStreamToRtspServer(int _iChn, int _iVencType, int _iFrameType, unsigned long long _ullTimeStamp,
	int _iFrameSize, unsigned char *_pucFrameBuf);

/*******************************************************
功能：获取rtspserver连接数
参数说明：
_iChn：通道，从零开始

返回值：
	-1：失败
	大于零：连接个数
********************************************************/

int GetRtspServerConnectCnt(int _iChn);

#endif


